package cc.md888.app.domain.entity;

import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 用户
 * </p>
 *
 * @author maodou
 * @since 2025-09-13 14:22:44
 */
@Getter
@Setter
public class User implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

    /**
     * 用户昵称
     */
    private String nickName;

    /**
     * 用户验证码
     */
    private String email;

    /**
     * 用户密码
     */
    private String password;

    /**
     * 访问令牌
     */
    private String accessToken;


    /**
     * 邀请码
     */
    private String inviteCode;

    /**
     * 设备id
     */
    private String deviceId;

    /**
     * 用户状态：ACTIVE：正常， BAN：已禁用
     */
    private String status;

    /**
     * 创建时间
     */
    private LocalDateTime createAt;

    /**
     * 更新时间
     */
    private LocalDateTime updateAt;


    public static final String ID = "id";

    public static final String NICK_NAME = "nick_name";

    public static final String EMAIL = "email";

    public static final String PASSWORD = "password";

    public static final String ACCESS_TOKEN = "access_token";

    public static final String INVITE_CODE = "invite_code";

    public static final String DEVICE_ID = "device_id";

    public static final String STATUS = "status";

    public static final String CREATE_AT = "create_at";

    public static final String UPDATE_AT = "update_at";

}
